package com.javabase.study.OOPFistPart;

/**
 * TODO
 * 内容：使用匿名内部类实现 回调
 * 尚未搞定
 * 作者:jxx
 * 创建时间：2021/6/21
 */

interface Callback2{

    /**
     * 小高知道答案后告诉小刘时需要调用的方法，即回调方法
     * @param result 问题的答案
     */
    public void answer(String result);
}

class Gao2{
    /**
     * 相当于class B有一个参数为callback的方法C
     * @param question
     */
    public void execute(String question){
        System.out.println("小刘的问题是： " + question);
        try {
            Thread.sleep(1000);
            String result1 = "学java当然要去尚学堂";
            new Callback2(){
                @Override
                public void answer(String result) {
                    System.out.println(result1);
                }
            };
        } catch (InterruptedException e){
            e.printStackTrace();
        }


    }
}

public class CallbackByAnonymousInnerClass {
    public static void main(String[] args){

        Gao2 gao2 = new Gao2();
        gao2.execute("学习java去哪里好呢？");

    }
}
